Currently, web applications are ubiquitous. They include applications that can be displayed by a browser, such as Firefox™, available from Mozilla Foundation, and can be accessed over a computer network, such as the Internet or a private network, without having to be installed on a local computer.
Prior art web application development usually conforms to the following pattern. A customer who desires to make a change to a web application user interface approaches a company that created and supplied the web application. The customer speaks with designers and developers about specific desires for the application. A designer then creates a mock-up, usually using a Hypertext Markup Language (HTML) tool to specify the visual look and feel of the web application. A developer then receives the mock-up and writes code to implement the desired functionality of the web application. Typically, the developer will write HTML code for the layout of the application and write JAVA and C++ or .NET and C# code for the functionality of the program. The developer generally does not use the code from the mock-up, starting from scratch instead. The developer then sends the application back to the designer to fix any visual discrepancies between the versions. There may be several iterations before a final version is ready for the customer's review.
Discarding the designer's mock up is somewhat wasteful. This is especially true in light of the fact that the designer is used again later in the process to fix the discrepancies in the developer's version. However, this process has grown up organically due to the fact that changes to the web application generally require significant programming skills. Currently, there is no application development environment that allows a designer or other person with few (or no) coding skills to create the functionality and visual aspects of a web application.